package com.zq.server.api.service;


import java.io.IOException;

import com.zq.common.core.domain.Result;
import com.zq.common.core.domain.entity.UserInfo;
import com.zq.server.api.domain.dto.SendCodeDto;
import com.zq.server.api.domain.dto.UserPhoneLoginDto;
import com.zq.server.api.domain.dto.VerifyPhoneCodeDto;
import com.zq.server.api.domain.dto.userWxLoginDto;
import com.zq.server.api.domain.vo.UserPhoneLoginVo;

/**
 * @author Super
 * @description 针对表【z_userinfo】的数据库操作Service
 * @createDate 2024-02-25 20:24:48
 */
public interface ApiUserInfoService {
    /**
     * 微信登录
     *
     * @param userWxLoginDto
     * @return
     */
    Result weChatLogin(userWxLoginDto userWxLoginDto);


    /**
     * 获取用户手机号
     *
     * @param userPhoneLoginDto
     * @return
     */
    UserPhoneLoginVo getUserPhone(UserPhoneLoginDto userPhoneLoginDto) throws IOException;


    /**
     * 手机号验证登录
     *
     * @param verifyPhoneCodeDto
     */
    Result verifyPhoneCode(VerifyPhoneCodeDto verifyPhoneCodeDto);


    /**
     * 用户获取验证码
     *
     * @param sendCodeDto
     * @return
     */
    Result sendVerificationCode(SendCodeDto sendCodeDto);

    /**
     * 修改用户信息
     *
     * @param user
     */
    Result updateUserInfo(UserInfo user);

}
